#ifndef PCMDECODER_HPP
#define PCMDECODER_HPP

#include <sndfile.h>
#include "Decoder.hpp"

/// @brief PCM/AIFF decoder class
class PcmDecoder : public Decoder {
    private:
        SNDFILE *sndFile;
        SF_INFO sndInfo;
    public:
        bool load(const char* filename, bool silence);
        void close();
        int decode(float *data, unsigned long frames);
        bool seek(unsigned int frame);
        PcmDecoder();
        ~PcmDecoder();
};

#endif // PCMDECODER_HPP
